package cn.lili.modules.order.order.entity.dos;

import cn.lili.mybatis.model.BaseStandardEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * 
 * @TableName li_prize_goods
 */
@TableName(value ="li_prize_goods")
@Data
@EqualsAndHashCode(callSuper = false)
public class PrizeGoods extends BaseStandardEntity implements Serializable {
    /**
     * 名字
     */
    @NotEmpty(message = "奖品名称不能为空")
    private String goodsName;

    /**
     * 图片
     */
    @NotEmpty(message = "奖品图片不能为空")
    private String goodsImage;

    /**
     * 商品价值金额
     */
    @NotNull(message = "价值金额不能为空")
    private BigDecimal goodsPrice;

    /**
     * 1实物商品，2虚拟商品
     */
    private Integer goodsType;
    @TableField(exist = false)
    private String goodsTypeName;

    /**
     * 虚拟类型： 字典 virtual_type
     */
    private Integer virtualType;
    @TableField(exist = false)
    private String virtualTypeName;

    /**
     * 购买次数
     */
    @NotNull(message = "购买次数不能为空")
    private Integer goodsFrequency;

    /**
     * 概率
     */
    @NotNull(message = "概率不能为空")
    private BigDecimal probability;

    /**
     * 是否需要领取，1需要，2不需要
     */
    private Integer isNeedToCollect;
    @TableField(exist = false)
    private String isNeedToCollectName;

    /**
     * 发布状态： 0待发布，1发布，2下架
     */
    private Integer publishType;
    @TableField(exist = false)
    private String publishTypeName;

    /**
     * H5转盘展示排序字段
     */
    @NotNull(message = "排序不能为空")
    private Integer sortNo;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}